home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / libxml2 / libxml / xmlwriter.h < prev    next >
C/C++ Source or Header  |  2006-04-25  |  20KB  |  460 lines

  1.  
  2. /*
  3.  * Summary: text writing API for XML
  4.  * Description: text writing API for XML
  5.  *
  6.  * Copy: See Copyright for the status of this software.
  7.  *
  8.  * Author: Alfred Mickautsch <alfred@mickautsch.de>
  9.  */
  10.  
  11. #ifndef __XML_XMLWRITER_H__
  12. #define __XML_XMLWRITER_H__
  13.  
  14. #include <libxml/xmlversion.h>
  15.  
  16. #ifdef LIBXML_WRITER_ENABLED
  17.  
  18. #include <stdarg.h>
  19. #include <libxml/xmlIO.h>
  20. #include <libxml/list.h>
  21. #include <libxml/xmlstring.h>
  22.  
  23. #ifdef __cplusplus
  24. extern "C" {
  25. #endif
  26.  
  27.     typedef struct _xmlTextWriter xmlTextWriter;
  28.     typedef xmlTextWriter *xmlTextWriterPtr;
  29.  
  30. /*
  31.  * Constructors & Destructor
  32.  */
  33.     XMLPUBFUN xmlTextWriterPtr XMLCALL
  34.         xmlNewTextWriter(xmlOutputBufferPtr out);
  35.     XMLPUBFUN xmlTextWriterPtr XMLCALL
  36.         xmlNewTextWriterFilename(const char *uri, int compression);
  37.     XMLPUBFUN xmlTextWriterPtr XMLCALL
  38.         xmlNewTextWriterMemory(xmlBufferPtr buf, int compression);
  39.     XMLPUBFUN xmlTextWriterPtr XMLCALL
  40.         xmlNewTextWriterPushParser(xmlParserCtxtPtr ctxt, int compression);
  41.     XMLPUBFUN xmlTextWriterPtr XMLCALL
  42.         xmlNewTextWriterDoc(xmlDocPtr * doc, int compression);
  43.     XMLPUBFUN xmlTextWriterPtr XMLCALL
  44.         xmlNewTextWriterTree(xmlDocPtr doc, xmlNodePtr node,
  45.                              int compression);
  46.     XMLPUBFUN void XMLCALL xmlFreeTextWriter(xmlTextWriterPtr writer);
  47.  
  48. /*
  49.  * Functions
  50.  */
  51.  
  52.  
  53. /*
  54.  * Document
  55.  */
  56.     XMLPUBFUN int XMLCALL
  57.         xmlTextWriterStartDocument(xmlTextWriterPtr writer,
  58.                                    const char *version,
  59.                                    const char *encoding,
  60.                                    const char *standalone);
  61.     XMLPUBFUN int XMLCALL xmlTextWriterEndDocument(xmlTextWriterPtr
  62.                                                    writer);
  63.  
  64. /*
  65.  * Comments
  66.  */
  67.     XMLPUBFUN int XMLCALL xmlTextWriterStartComment(xmlTextWriterPtr
  68.                                                     writer);
  69.     XMLPUBFUN int XMLCALL xmlTextWriterEndComment(xmlTextWriterPtr writer);
  70.     XMLPUBFUN int XMLCALL
  71.         xmlTextWriterWriteFormatComment(xmlTextWriterPtr writer,
  72.                                         const char *format, ...);
  73.     XMLPUBFUN int XMLCALL
  74.         xmlTextWriterWriteVFormatComment(xmlTextWriterPtr writer,
  75.                                          const char *format,
  76.                                          va_list argptr);
  77.     XMLPUBFUN int XMLCALL xmlTextWriterWriteComment(xmlTextWriterPtr
  78.                                                     writer,
  79.                                                     const xmlChar *
  80.                                                     content);
  81.  
  82. /*
  83.  * Elements
  84.  */
  85.     XMLPUBFUN int XMLCALL
  86.         xmlTextWriterStartElement(xmlTextWriterPtr writer,
  87.                                   const xmlChar * name);
  88.     XMLPUBFUN int XMLCALL xmlTextWriterStartElementNS(xmlTextWriterPtr
  89.                                                       writer,
  90.                                                       const xmlChar *
  91.                                                       prefix,
  92.                                                       const xmlChar * name,
  93.                                                       const xmlChar *
  94.                                                       namespaceURI);
  95.     XMLPUBFUN int XMLCALL xmlTextWriterEndElement(xmlTextWriterPtr writer);
  96.     XMLPUBFUN int XMLCALL xmlTextWriterFullEndElement(xmlTextWriterPtr
  97.                                                       writer);
  98.  
  99. /*
  100.  * Elements conveniency functions
  101.  */
  102.     XMLPUBFUN int XMLCALL
  103.         xmlTextWriterWriteFormatElement(xmlTextWriterPtr writer,
  104.                                         const xmlChar * name,
  105.                                         const char *format, ...);
  106.     XMLPUBFUN int XMLCALL
  107.         xmlTextWriterWriteVFormatElement(xmlTextWriterPtr writer,
  108.                                          const xmlChar * name,
  109.                                          const char *format,
  110.                                          va_list argptr);
  111.     XMLPUBFUN int XMLCALL xmlTextWriterWriteElement(xmlTextWriterPtr
  112.                                                     writer,
  113.                                                     const xmlChar * name,
  114.                                                     const xmlChar *
  115.                                                     content);
  116.     XMLPUBFUN int XMLCALL
  117.         xmlTextWriterWriteFormatElementNS(xmlTextWriterPtr writer,
  118.                                           const xmlChar * prefix,
  119.                                           const xmlChar * name,
  120.                                           const xmlChar * namespaceURI,
  121.                                           const char *format, ...);
  122.     XMLPUBFUN int XMLCALL
  123.         xmlTextWriterWriteVFormatElementNS(xmlTextWriterPtr writer,
  124.                                            const xmlChar * prefix,
  125.                                            const xmlChar * name,
  126.                                            const xmlChar * namespaceURI,
  127.                                            const char *format,
  128.                                            va_list argptr);
  129.     XMLPUBFUN int XMLCALL xmlTextWriterWriteElementNS(xmlTextWriterPtr
  130.                                                       writer,
  131.                                                       const xmlChar *
  132.                                                       prefix,
  133.                                                       const xmlChar * name,
  134.                                                       const xmlChar *
  135.                                                       namespaceURI,
  136.                                                       const xmlChar *
  137.                                                       content);
  138.  
  139. /*
  140.  * Text
  141.  */
  142.     XMLPUBFUN int XMLCALL
  143.         xmlTextWriterWriteFormatRaw(xmlTextWriterPtr writer,
  144.                                     const char *format, ...);
  145.     XMLPUBFUN int XMLCALL
  146.         xmlTextWriterWriteVFormatRaw(xmlTextWriterPtr writer,
  147.                                      const char *format, va_list argptr);
  148.     XMLPUBFUN int XMLCALL
  149.         xmlTextWriterWriteRawLen(xmlTextWriterPtr writer,
  150.                                  const xmlChar * content, int len);
  151.     XMLPUBFUN int XMLCALL
  152.         xmlTextWriterWriteRaw(xmlTextWriterPtr writer,
  153.                               const xmlChar * content);
  154.     XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatString(xmlTextWriterPtr
  155.                                                          writer,
  156.                                                          const char
  157.                                                          *format, ...);
  158.     XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatString(xmlTextWriterPtr
  159.                                                           writer,
  160.                                                           const char
  161.                                                           *format,
  162.                                                           va_list argptr);
  163.     XMLPUBFUN int XMLCALL xmlTextWriterWriteString(xmlTextWriterPtr writer,
  164.                                                    const xmlChar *
  165.                                                    content);
  166.     XMLPUBFUN int XMLCALL xmlTextWriterWriteBase64(xmlTextWriterPtr writer,
  167.                                                    const char *data,
  168.                                                    int start, int len);
  169.     XMLPUBFUN int XMLCALL xmlTextWriterWriteBinHex(xmlTextWriterPtr writer,
  170.                                                    const char *data,
  171.                                                    int start, int len);
  172.  
  173. /*
  174.  * Attributes
  175.  */
  176.     XMLPUBFUN int XMLCALL
  177.         xmlTextWriterStartAttribute(xmlTextWriterPtr writer,
  178.                                     const xmlChar * name);
  179.     XMLPUBFUN int XMLCALL xmlTextWriterStartAttributeNS(xmlTextWriterPtr
  180.                                                         writer,
  181.                                                         const xmlChar *
  182.                                                         prefix,
  183.                                                         const xmlChar *
  184.                                                         name,
  185.                                                         const xmlChar *
  186.                                                         namespaceURI);
  187.     XMLPUBFUN int XMLCALL xmlTextWriterEndAttribute(xmlTextWriterPtr
  188.                                                     writer);
  189.  
  190. /*
  191.  * Attributes conveniency functions
  192.  */
  193.     XMLPUBFUN int XMLCALL
  194.         xmlTextWriterWriteFormatAttribute(xmlTextWriterPtr writer,
  195.                                           const xmlChar * name,
  196.                                           const char *format, ...);
  197.     XMLPUBFUN int XMLCALL
  198.         xmlTextWriterWriteVFormatAttribute(xmlTextWriterPtr writer,
  199.                                            const xmlChar * name,
  200.                                            const char *format,
  201.                                            va_list argptr);
  202.     XMLPUBFUN int XMLCALL xmlTextWriterWriteAttribute(xmlTextWriterPtr
  203.                                                       writer,
  204.                                                       const xmlChar * name,
  205.                                                       const xmlChar *
  206.                                                       content);
  207.     XMLPUBFUN int XMLCALL
  208.         xmlTextWriterWriteFormatAttributeNS(xmlTextWriterPtr writer,
  209.                                             const xmlChar * prefix,
  210.                                             const xmlChar * name,
  211.                                             const xmlChar * namespaceURI,
  212.                                             const char *format, ...);
  213.     XMLPUBFUN int XMLCALL
  214.         xmlTextWriterWriteVFormatAttributeNS(xmlTextWriterPtr writer,
  215.                                              const xmlChar * prefix,
  216.                                              const xmlChar * name,
  217.                                              const xmlChar * namespaceURI,
  218.                                              const char *format,
  219.                                              va_list argptr);
  220.     XMLPUBFUN int XMLCALL xmlTextWriterWriteAttributeNS(xmlTextWriterPtr
  221.                                                         writer,
  222.                                                         const xmlChar *
  223.                                                         prefix,
  224.                                                         const xmlChar *
  225.                                                         name,
  226.                                                         const xmlChar *
  227.                                                         namespaceURI,
  228.                                                         const xmlChar *
  229.                                                         content);
  230.  
  231. /*
  232.  * PI's
  233.  */
  234.     XMLPUBFUN int XMLCALL
  235.         xmlTextWriterStartPI(xmlTextWriterPtr writer,
  236.                              const xmlChar * target);
  237.     XMLPUBFUN int XMLCALL xmlTextWriterEndPI(xmlTextWriterPtr writer);
  238.  
  239. /*
  240.  * PI conveniency functions
  241.  */
  242.     XMLPUBFUN int XMLCALL
  243.         xmlTextWriterWriteFormatPI(xmlTextWriterPtr writer,
  244.                                    const xmlChar * target,
  245.                                    const char *format, ...);
  246.     XMLPUBFUN int XMLCALL
  247.         xmlTextWriterWriteVFormatPI(xmlTextWriterPtr writer,
  248.                                     const xmlChar * target,
  249.                                     const char *format, va_list argptr);
  250.     XMLPUBFUN int XMLCALL
  251.         xmlTextWriterWritePI(xmlTextWriterPtr writer,
  252.                              const xmlChar * target,
  253.                              const xmlChar * content);
  254.  
  255. /**
  256.  * xmlTextWriterWriteProcessingInstruction:
  257.  *
  258.  * This macro maps to xmlTextWriterWritePI
  259.  */
  260. #define xmlTextWriterWriteProcessingInstruction xmlTextWriterWritePI
  261.  
  262. /*
  263.  * CDATA
  264.  */
  265.     XMLPUBFUN int XMLCALL xmlTextWriterStartCDATA(xmlTextWriterPtr writer);
  266.     XMLPUBFUN int XMLCALL xmlTextWriterEndCDATA(xmlTextWriterPtr writer);
  267.  
  268. /*
  269.  * CDATA conveniency functions
  270.  */
  271.     XMLPUBFUN int XMLCALL
  272.         xmlTextWriterWriteFormatCDATA(xmlTextWriterPtr writer,
  273.                                       const char *format, ...);
  274.     XMLPUBFUN int XMLCALL
  275.         xmlTextWriterWriteVFormatCDATA(xmlTextWriterPtr writer,
  276.                                        const char *format, va_list argptr);
  277.     XMLPUBFUN int XMLCALL
  278.         xmlTextWriterWriteCDATA(xmlTextWriterPtr writer,
  279.                                 const xmlChar * content);
  280.  
  281. /*
  282.  * DTD
  283.  */
  284.     XMLPUBFUN int XMLCALL
  285.         xmlTextWriterStartDTD(xmlTextWriterPtr writer,
  286.                               const xmlChar * name,
  287.                               const xmlChar * pubid,
  288.                               const xmlChar * sysid);
  289.     XMLPUBFUN int XMLCALL xmlTextWriterEndDTD(xmlTextWriterPtr writer);
  290.  
  291. /*
  292.  * DTD conveniency functions
  293.  */
  294.     XMLPUBFUN int XMLCALL
  295.         xmlTextWriterWriteFormatDTD(xmlTextWriterPtr writer,
  296.                                     const xmlChar * name,
  297.                                     const xmlChar * pubid,
  298.                                     const xmlChar * sysid,
  299.                                     const char *format, ...);
  300.     XMLPUBFUN int XMLCALL
  301.         xmlTextWriterWriteVFormatDTD(xmlTextWriterPtr writer,
  302.                                      const xmlChar * name,
  303.                                      const xmlChar * pubid,
  304.                                      const xmlChar * sysid,
  305.                                      const char *format, va_list argptr);
  306.     XMLPUBFUN int XMLCALL
  307.         xmlTextWriterWriteDTD(xmlTextWriterPtr writer,
  308.                               const xmlChar * name,
  309.                               const xmlChar * pubid,
  310.                               const xmlChar * sysid,
  311.                               const xmlChar * subset);
  312.  
  313. /**
  314.  * xmlTextWriterWriteDocType:
  315.  *
  316.  * this macro maps to xmlTextWriterWriteDTD
  317.  */
  318. #define xmlTextWriterWriteDocType xmlTextWriterWriteDTD
  319.  
  320. /*
  321.  * DTD element definition
  322.  */
  323.     XMLPUBFUN int XMLCALL
  324.         xmlTextWriterStartDTDElement(xmlTextWriterPtr writer,
  325.                                      const xmlChar * name);
  326.     XMLPUBFUN int XMLCALL xmlTextWriterEndDTDElement(xmlTextWriterPtr
  327.                                                      writer);
  328.  
  329. /*
  330.  * DTD element definition conveniency functions
  331.  */
  332.     XMLPUBFUN int XMLCALL
  333.         xmlTextWriterWriteFormatDTDElement(xmlTextWriterPtr writer,
  334.                                            const xmlChar * name,
  335.                                            const char *format, ...);
  336.     XMLPUBFUN int XMLCALL
  337.         xmlTextWriterWriteVFormatDTDElement(xmlTextWriterPtr writer,
  338.                                             const xmlChar * name,
  339.                                             const char *format,
  340.                                             va_list argptr);
  341.     XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDElement(xmlTextWriterPtr
  342.                                                        writer,
  343.                                                        const xmlChar *
  344.                                                        name,
  345.                                                        const xmlChar *
  346.                                                        content);
  347.  
  348. /*
  349.  * DTD attribute list definition
  350.  */
  351.     XMLPUBFUN int XMLCALL
  352.         xmlTextWriterStartDTDAttlist(xmlTextWriterPtr writer,
  353.                                      const xmlChar * name);
  354.     XMLPUBFUN int XMLCALL xmlTextWriterEndDTDAttlist(xmlTextWriterPtr
  355.                                                      writer);
  356.  
  357. /*
  358.  * DTD attribute list definition conveniency functions
  359.  */
  360.     XMLPUBFUN int XMLCALL
  361.         xmlTextWriterWriteFormatDTDAttlist(xmlTextWriterPtr writer,
  362.                                            const xmlChar * name,
  363.                                            const char *format, ...);
  364.     XMLPUBFUN int XMLCALL
  365.         xmlTextWriterWriteVFormatDTDAttlist(xmlTextWriterPtr writer,
  366.                                             const xmlChar * name,
  367.                                             const char *format,
  368.                                             va_list argptr);
  369.     XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDAttlist(xmlTextWriterPtr
  370.                                                        writer,
  371.                                                        const xmlChar *
  372.                                                        name,
  373.                                                        const xmlChar *
  374.                                                        content);
  375.  
  376. /*
  377.  * DTD entity definition
  378.  */
  379.     XMLPUBFUN int XMLCALL
  380.         xmlTextWriterStartDTDEntity(xmlTextWriterPtr writer,
  381.                                     int pe, const xmlChar * name);
  382.     XMLPUBFUN int XMLCALL xmlTextWriterEndDTDEntity(xmlTextWriterPtr
  383.                                                     writer);
  384.  
  385. /*
  386.  * DTD entity definition conveniency functions
  387.  */
  388.     XMLPUBFUN int XMLCALL
  389.         xmlTextWriterWriteFormatDTDInternalEntity(xmlTextWriterPtr writer,
  390.                                                   int pe,
  391.                                                   const xmlChar * name,
  392.                                                   const char *format, ...);
  393.     XMLPUBFUN int XMLCALL
  394.         xmlTextWriterWriteVFormatDTDInternalEntity(xmlTextWriterPtr writer,
  395.                                                    int pe,
  396.                                                    const xmlChar * name,
  397.                                                    const char *format,
  398.                                                    va_list argptr);
  399.     XMLPUBFUN int XMLCALL
  400.         xmlTextWriterWriteDTDInternalEntity(xmlTextWriterPtr writer,
  401.                                             int pe,
  402.                                             const xmlChar * name,
  403.                                             const xmlChar * content);
  404.     XMLPUBFUN int XMLCALL
  405.         xmlTextWriterWriteDTDExternalEntity(xmlTextWriterPtr writer,
  406.                                             int pe,
  407.                                             const xmlChar * name,
  408.                                             const xmlChar * pubid,
  409.                                             const xmlChar * sysid,
  410.                                             const xmlChar * ndataid);
  411.     XMLPUBFUN int XMLCALL
  412.         xmlTextWriterWriteDTDExternalEntityContents(xmlTextWriterPtr
  413.                                                     writer,
  414.                                                     const xmlChar * pubid,
  415.                                                     const xmlChar * sysid,
  416.                                                     const xmlChar *
  417.                                                     ndataid);
  418.     XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDEntity(xmlTextWriterPtr
  419.                                                       writer, int pe,
  420.                                                       const xmlChar * name,
  421.                                                       const xmlChar *
  422.                                                       pubid,
  423.                                                       const xmlChar *
  424.                                                       sysid,
  425.                                                       const xmlChar *
  426.                                                       ndataid,
  427.                                                       const xmlChar *
  428.                                                       content);
  429.  
  430. /*
  431.  * DTD notation definition
  432.  */
  433.     XMLPUBFUN int XMLCALL
  434.         xmlTextWriterWriteDTDNotation(xmlTextWriterPtr writer,
  435.                                       const xmlChar * name,
  436.                                       const xmlChar * pubid,
  437.                                       const xmlChar * sysid);
  438.  
  439. /*
  440.  * Indentation
  441.  */
  442.     XMLPUBFUN int XMLCALL
  443.         xmlTextWriterSetIndent(xmlTextWriterPtr writer, int indent);
  444.     XMLPUBFUN int XMLCALL
  445.         xmlTextWriterSetIndentString(xmlTextWriterPtr writer,
  446.                                      const xmlChar * str);
  447.  
  448. /*
  449.  * misc
  450.  */
  451.     XMLPUBFUN int XMLCALL xmlTextWriterFlush(xmlTextWriterPtr writer);
  452.  
  453. #ifdef __cplusplus
  454. }
  455. #endif
  456.  
  457. #endif /* LIBXML_WRITER_ENABLED */
  458.  
  459. #endif                          /* __XML_XMLWRITER_H__ */
  460.